// ✅ Функция работает с ЛЮБЫМ непрерывным контейнером! void processData(std::span<const int> data) { for (const auto& item : data) { // Обработка } }
int main() { // Работает с std::vector std::vector<int> vec = {1, 2, 3, 4, 5}; processData(vec);
// Работает с std::array std::array<int, 3> arr = {10, 20, 30}; processData(arr);
// Работает с C-массивами int classic[] = {100, 200, 300}; processData(classic);
// Работает с подпоследовательностями! processData(std::span(vec).subspan(1, 3)); // Только элементы 2,3,4 }
❗️Преимущества std::span:
- Не владеет данными (zero overhead) - Безопасно передает подпоследовательности - Унифицированный интерфейс для всех контейнеров - Выразительный код без шаблонных параметров
// ✅ Функция работает с ЛЮБЫМ непрерывным контейнером! void processData(std::span<const int> data) { for (const auto& item : data) { // Обработка } }
int main() { // Работает с std::vector std::vector<int> vec = {1, 2, 3, 4, 5}; processData(vec);
// Работает с std::array std::array<int, 3> arr = {10, 20, 30}; processData(arr);
// Работает с C-массивами int classic[] = {100, 200, 300}; processData(classic);
// Работает с подпоследовательностями! processData(std::span(vec).subspan(1, 3)); // Только элементы 2,3,4 }
❗️Преимущества std::span:
- Не владеет данными (zero overhead) - Безопасно передает подпоследовательности - Унифицированный интерфейс для всех контейнеров - Выразительный код без шаблонных параметров
With the help of the Search Filters option, users can now filter search results by type. They can do that by using the new tabs: Media, Links, Files and others. Searches can be done based on the particular time period like by typing in the date or even “Yesterday”. If users type in the name of a person, group, channel or bot, an extra filter will be applied to the searches.
The seemingly negative pandemic effects and resource/product shortages are encouraging and allowing organizations to innovate and change.The news of cash-rich organizations getting ready for the post-Covid growth economy is a sign of more than capital spending plans. Cash provides a cushion for risk-taking and a tool for growth.
Библиотека C C разработчика | cpp boost qt from kr